package com.siwuxie095.functional.chapter6th.example3rd;

/**
 * @author Jiajing Li
 * @date 2020-10-23 08:21:08
 */
public class Main {

    /**
     * 为什么并行化如此重要
     *
     * 过去可以指望 CPU 时钟频率会变得越来越快。1979 年，英特尔公司推出的 8086 处理器的时钟频率为 5 MHz；
     * 到了 1993 年，奔腾芯片的速度达到了 60 MHz。在21世纪早期，CPU 的处理速度一直以这种方式增长。
     *
     * 然而在过去十年中（2015 年往前），主流的芯片厂商转向了多核处理器。而到了现在（2020 年），服务器通过
     * 几个物理单元搭载 32 或 64 核的情况已不鲜见，而且，这种趋势尚无减弱的征兆。
     *
     * 这种变化影响到了软件设计。不能再依赖提升 CPU 的时钟频率来提高现有代码的计算能力，需要利用现代 CPU
     * 的架构，而唯一的办法就是编写并行化的代码。
     *
     * 众所周知，阿姆达尔定律（Amdahl 定律）描述了并行化的重要性。阿姆达尔定律是一个简单规则，预测了搭载多
     * 核处理器的机器提升程序速度的理论最大值。
     *
     * 以一段完全串行化的程序为例，如果将其一半改为并行化处理，则不管增加多少处理器，其理论上的最大速度只是
     * 原来的 2 倍。有了大量的处理器后，现在这已经是现实了，问题的求解时间将完全取决于它可被分解成几个部分。
     *
     * 以这样的方式思考性能问题，优化任何和计算相关的任务立即变成了如何有效利用现有硬件的问题。当然，也不是
     * 所有的任务都和计算相关，这里只关注这类和计算相关的问题。
     */
    public static void main(String[] args) {

    }

}
